
;;;; SDL_gfx v2.0.13 CFFI lisp wrapper
;;;; Part of the CL-Gardeners project
;;;; http://wiki.alu.org/Application_Builder
;;;; (C)2006 Luke J Crook
;;;; See COPYING for license

(in-package #:lispbuilder-sdl-gfx)

(defparameter gfxPrimitivesFontdata (cffi:foreign-alloc :char :count 2048 :initial-element 0))

(let ((font-data 
  '("0x00" "0x00" "0x00" "0x00" "0x00" "0x00" "0x00" "0x00" "0x7e" "0x81" "0xa5" "0x81" "0xbd" "0x99" "0x81" "0x7e"
    "0x7e" "0xff" "0xdb" "0xff" "0xc3" "0xe7" "0xff" "0x7e" "0x6c" "0xfe" "0xfe" "0xfe" "0x7c" "0x38" "0x10" "0x00"
    "0x10" "0x38" "0x7c" "0xfe" "0x7c" "0x38" "0x10" "0x00" "0x38" "0x7c" "0x38" "0xfe" "0xfe" "0xd6" "0x10" "0x38"
    "0x10" "0x38" "0x7c" "0xfe" "0xfe" "0x7c" "0x10" "0x38" "0x00" "0x00" "0x18" "0x3c" "0x3c" "0x18" "0x00" "0x00"
    "0xff" "0xff" "0xe7" "0xc3" "0xc3" "0xe7" "0xff" "0xff" "0x00" "0x3c" "0x66" "0x42" "0x42" "0x66" "0x3c" "0x00"
    "0xff" "0xc3" "0x99" "0xbd" "0xbd" "0x99" "0xc3" "0xff" "0x0f" "0x07" "0x0f" "0x7d" "0xcc" "0xcc" "0xcc" "0x78"
    "0x3c" "0x66" "0x66" "0x66" "0x3c" "0x18" "0x7e" "0x18" "0x3f" "0x33" "0x3f" "0x30" "0x30" "0x70" "0xf0" "0xe0"
    "0x7f" "0x63" "0x7f" "0x63" "0x63" "0x67" "0xe6" "0xc0" "0x18" "0xdb" "0x3c" "0xe7" "0xe7" "0x3c" "0xdb" "0x18"
    "0x80" "0xe0" "0xf8" "0xfe" "0xf8" "0xe0" "0x80" "0x00" "0x02" "0x0e" "0x3e" "0xfe" "0x3e" "0x0e" "0x02" "0x00"
    "0x18" "0x3c" "0x7e" "0x18" "0x18" "0x7e" "0x3c" "0x18" "0x66" "0x66" "0x66" "0x66" "0x66" "0x00" "0x66" "0x00"
    "0x7f" "0xdb" "0xdb" "0x7b" "0x1b" "0x1b" "0x1b" "0x00" "0x3e" "0x61" "0x3c" "0x66" "0x66" "0x3c" "0x86" "0x7c"
    "0x00" "0x00" "0x00" "0x00" "0x7e" "0x7e" "0x7e" "0x00" "0x18" "0x3c" "0x7e" "0x18" "0x7e" "0x3c" "0x18" "0xff"
    "0x18" "0x3c" "0x7e" "0x18" "0x18" "0x18" "0x18" "0x00" "0x18" "0x18" "0x18" "0x18" "0x7e" "0x3c" "0x18" "0x00"
    "0x00" "0x18" "0x0c" "0xfe" "0x0c" "0x18" "0x00" "0x00" "0x00" "0x30" "0x60" "0xfe" "0x60" "0x30" "0x00" "0x00"
    "0x00" "0x00" "0xc0" "0xc0" "0xc0" "0xfe" "0x00" "0x00" "0x00" "0x24" "0x66" "0xff" "0x66" "0x24" "0x00" "0x00"
    "0x00" "0x18" "0x3c" "0x7e" "0xff" "0xff" "0x00" "0x00" "0x00" "0xff" "0xff" "0x7e" "0x3c" "0x18" "0x00" "0x00"
    "0x00" "0x00" "0x00" "0x00" "0x00" "0x00" "0x00" "0x00" "0x18" "0x3c" "0x3c" "0x18" "0x18" "0x00" "0x18" "0x00"
    "0x66" "0x66" "0x24" "0x00" "0x00" "0x00" "0x00" "0x00" "0x6c" "0x6c" "0xfe" "0x6c" "0xfe" "0x6c" "0x6c" "0x00"
    "0x18" "0x3e" "0x60" "0x3c" "0x06" "0x7c" "0x18" "0x00" "0x00" "0xc6" "0xcc" "0x18" "0x30" "0x66" "0xc6" "0x00"
    "0x38" "0x6c" "0x38" "0x76" "0xdc" "0xcc" "0x76" "0x00" "0x18" "0x18" "0x30" "0x00" "0x00" "0x00" "0x00" "0x00"
    "0x0c" "0x18" "0x30" "0x30" "0x30" "0x18" "0x0c" "0x00" "0x30" "0x18" "0x0c" "0x0c" "0x0c" "0x18" "0x30" "0x00"
    "0x00" "0x66" "0x3c" "0xff" "0x3c" "0x66" "0x00" "0x00" "0x00" "0x18" "0x18" "0x7e" "0x18" "0x18" "0x00" "0x00"
    "0x00" "0x00" "0x00" "0x00" "0x00" "0x18" "0x18" "0x30" "0x00" "0x00" "0x00" "0x7e" "0x00" "0x00" "0x00" "0x00"
    "0x00" "0x00" "0x00" "0x00" "0x00" "0x18" "0x18" "0x00" "0x06" "0x0c" "0x18" "0x30" "0x60" "0xc0" "0x80" "0x00"
    "0x38" "0x6c" "0xc6" "0xd6" "0xc6" "0x6c" "0x38" "0x00" "0x18" "0x38" "0x18" "0x18" "0x18" "0x18" "0x7e" "0x00"
    "0x7c" "0xc6" "0x06" "0x1c" "0x30" "0x66" "0xfe" "0x00" "0x7c" "0xc6" "0x06" "0x3c" "0x06" "0xc6" "0x7c" "0x00"
    "0x1c" "0x3c" "0x6c" "0xcc" "0xfe" "0x0c" "0x1e" "0x00" "0xfe" "0xc0" "0xc0" "0xfc" "0x06" "0xc6" "0x7c" "0x00"
    "0x38" "0x60" "0xc0" "0xfc" "0xc6" "0xc6" "0x7c" "0x00" "0xfe" "0xc6" "0x0c" "0x18" "0x30" "0x30" "0x30" "0x00"
    "0x7c" "0xc6" "0xc6" "0x7c" "0xc6" "0xc6" "0x7c" "0x00" "0x7c" "0xc6" "0xc6" "0x7e" "0x06" "0x0c" "0x78" "0x00"
    "0x00" "0x18" "0x18" "0x00" "0x00" "0x18" "0x18" "0x00" "0x00" "0x18" "0x18" "0x00" "0x00" "0x18" "0x18" "0x30"
    "0x06" "0x0c" "0x18" "0x30" "0x18" "0x0c" "0x06" "0x00" "0x00" "0x00" "0x7e" "0x00" "0x00" "0x7e" "0x00" "0x00"
    "0x60" "0x30" "0x18" "0x0c" "0x18" "0x30" "0x60" "0x00" "0x7c" "0xc6" "0x0c" "0x18" "0x18" "0x00" "0x18" "0x00"
    "0x7c" "0xc6" "0xde" "0xde" "0xde" "0xc0" "0x78" "0x00" "0x38" "0x6c" "0xc6" "0xfe" "0xc6" "0xc6" "0xc6" "0x00"
    "0xfc" "0x66" "0x66" "0x7c" "0x66" "0x66" "0xfc" "0x00" "0x3c" "0x66" "0xc0" "0xc0" "0xc0" "0x66" "0x3c" "0x00"
    "0xf8" "0x6c" "0x66" "0x66" "0x66" "0x6c" "0xf8" "0x00" "0xfe" "0x62" "0x68" "0x78" "0x68" "0x62" "0xfe" "0x00"
    "0xfe" "0x62" "0x68" "0x78" "0x68" "0x60" "0xf0" "0x00" "0x3c" "0x66" "0xc0" "0xc0" "0xce" "0x66" "0x3a" "0x00"
    "0xc6" "0xc6" "0xc6" "0xfe" "0xc6" "0xc6" "0xc6" "0x00" "0x3c" "0x18" "0x18" "0x18" "0x18" "0x18" "0x3c" "0x00"
    "0x1e" "0x0c" "0x0c" "0x0c" "0xcc" "0xcc" "0x78" "0x00" "0xe6" "0x66" "0x6c" "0x78" "0x6c" "0x66" "0xe6" "0x00"
    "0xf0" "0x60" "0x60" "0x60" "0x62" "0x66" "0xfe" "0x00" "0xc6" "0xee" "0xfe" "0xfe" "0xd6" "0xc6" "0xc6" "0x00"
    "0xc6" "0xe6" "0xf6" "0xde" "0xce" "0xc6" "0xc6" "0x00" "0x7c" "0xc6" "0xc6" "0xc6" "0xc6" "0xc6" "0x7c" "0x00"
    "0xfc" "0x66" "0x66" "0x7c" "0x60" "0x60" "0xf0" "0x00" "0x7c" "0xc6" "0xc6" "0xc6" "0xc6" "0xce" "0x7c" "0x0e"
    "0xfc" "0x66" "0x66" "0x7c" "0x6c" "0x66" "0xe6" "0x00" "0x3c" "0x66" "0x30" "0x18" "0x0c" "0x66" "0x3c" "0x00"
    "0x7e" "0x7e" "0x5a" "0x18" "0x18" "0x18" "0x3c" "0x00" "0xc6" "0xc6" "0xc6" "0xc6" "0xc6" "0xc6" "0x7c" "0x00"
    "0xc6" "0xc6" "0xc6" "0xc6" "0xc6" "0x6c" "0x38" "0x00" "0xc6" "0xc6" "0xc6" "0xd6" "0xd6" "0xfe" "0x6c" "0x00"
    "0xc6" "0xc6" "0x6c" "0x38" "0x6c" "0xc6" "0xc6" "0x00" "0x66" "0x66" "0x66" "0x3c" "0x18" "0x18" "0x3c" "0x00"
    "0xfe" "0xc6" "0x8c" "0x18" "0x32" "0x66" "0xfe" "0x00" "0x3c" "0x30" "0x30" "0x30" "0x30" "0x30" "0x3c" "0x00"
    "0xc0" "0x60" "0x30" "0x18" "0x0c" "0x06" "0x02" "0x00" "0x3c" "0x0c" "0x0c" "0x0c" "0x0c" "0x0c" "0x3c" "0x00"
    "0x10" "0x38" "0x6c" "0xc6" "0x00" "0x00" "0x00" "0x00" "0x00" "0x00" "0x00" "0x00" "0x00" "0x00" "0x00" "0xff"
    "0x30" "0x18" "0x0c" "0x00" "0x00" "0x00" "0x00" "0x00" "0x00" "0x00" "0x78" "0x0c" "0x7c" "0xcc" "0x76" "0x00"
    "0xe0" "0x60" "0x7c" "0x66" "0x66" "0x66" "0xdc" "0x00" "0x00" "0x00" "0x7c" "0xc6" "0xc0" "0xc6" "0x7c" "0x00"
    "0x1c" "0x0c" "0x7c" "0xcc" "0xcc" "0xcc" "0x76" "0x00" "0x00" "0x00" "0x7c" "0xc6" "0xfe" "0xc0" "0x7c" "0x00"
    "0x3c" "0x66" "0x60" "0xf8" "0x60" "0x60" "0xf0" "0x00" "0x00" "0x00" "0x76" "0xcc" "0xcc" "0x7c" "0x0c" "0xf8"
    "0xe0" "0x60" "0x6c" "0x76" "0x66" "0x66" "0xe6" "0x00" "0x18" "0x00" "0x38" "0x18" "0x18" "0x18" "0x3c" "0x00"
    "0x06" "0x00" "0x06" "0x06" "0x06" "0x66" "0x66" "0x3c" "0xe0" "0x60" "0x66" "0x6c" "0x78" "0x6c" "0xe6" "0x00"
    "0x38" "0x18" "0x18" "0x18" "0x18" "0x18" "0x3c" "0x00" "0x00" "0x00" "0xec" "0xfe" "0xd6" "0xd6" "0xd6" "0x00"
    "0x00" "0x00" "0xdc" "0x66" "0x66" "0x66" "0x66" "0x00" "0x00" "0x00" "0x7c" "0xc6" "0xc6" "0xc6" "0x7c" "0x00"
    "0x00" "0x00" "0xdc" "0x66" "0x66" "0x7c" "0x60" "0xf0" "0x00" "0x00" "0x76" "0xcc" "0xcc" "0x7c" "0x0c" "0x1e"
    "0x00" "0x00" "0xdc" "0x76" "0x60" "0x60" "0xf0" "0x00" "0x00" "0x00" "0x7e" "0xc0" "0x7c" "0x06" "0xfc" "0x00"
    "0x30" "0x30" "0xfc" "0x30" "0x30" "0x36" "0x1c" "0x00" "0x00" "0x00" "0xcc" "0xcc" "0xcc" "0xcc" "0x76" "0x00"
    "0x00" "0x00" "0xc6" "0xc6" "0xc6" "0x6c" "0x38" "0x00" "0x00" "0x00" "0xc6" "0xd6" "0xd6" "0xfe" "0x6c" "0x00"
    "0x00" "0x00" "0xc6" "0x6c" "0x38" "0x6c" "0xc6" "0x00" "0x00" "0x00" "0xc6" "0xc6" "0xc6" "0x7e" "0x06" "0xfc"
    "0x00" "0x00" "0x7e" "0x4c" "0x18" "0x32" "0x7e" "0x00" "0x0e" "0x18" "0x18" "0x70" "0x18" "0x18" "0x0e" "0x00"
    "0x18" "0x18" "0x18" "0x18" "0x18" "0x18" "0x18" "0x00" "0x70" "0x18" "0x18" "0x0e" "0x18" "0x18" "0x70" "0x00"
    "0x76" "0xdc" "0x00" "0x00" "0x00" "0x00" "0x00" "0x00" "0x00" "0x10" "0x38" "0x6c" "0xc6" "0xc6" "0xfe" "0x00"
    "0x7c" "0xc6" "0xc0" "0xc0" "0xc6" "0x7c" "0x0c" "0x78" "0xcc" "0x00" "0xcc" "0xcc" "0xcc" "0xcc" "0x76" "0x00"
    "0x0c" "0x18" "0x7c" "0xc6" "0xfe" "0xc0" "0x7c" "0x00" "0x7c" "0x82" "0x78" "0x0c" "0x7c" "0xcc" "0x76" "0x00"
    "0xc6" "0x00" "0x78" "0x0c" "0x7c" "0xcc" "0x76" "0x00" "0x30" "0x18" "0x78" "0x0c" "0x7c" "0xcc" "0x76" "0x00"
    "0x30" "0x30" "0x78" "0x0c" "0x7c" "0xcc" "0x76" "0x00" "0x00" "0x00" "0x7e" "0xc0" "0xc0" "0x7e" "0x0c" "0x38"
    "0x7c" "0x82" "0x7c" "0xc6" "0xfe" "0xc0" "0x7c" "0x00" "0xc6" "0x00" "0x7c" "0xc6" "0xfe" "0xc0" "0x7c" "0x00"
    "0x30" "0x18" "0x7c" "0xc6" "0xfe" "0xc0" "0x7c" "0x00" "0x66" "0x00" "0x38" "0x18" "0x18" "0x18" "0x3c" "0x00"
    "0x7c" "0x82" "0x38" "0x18" "0x18" "0x18" "0x3c" "0x00" "0x30" "0x18" "0x00" "0x38" "0x18" "0x18" "0x3c" "0x00"
    "0xc6" "0x38" "0x6c" "0xc6" "0xfe" "0xc6" "0xc6" "0x00" "0x38" "0x6c" "0x7c" "0xc6" "0xfe" "0xc6" "0xc6" "0x00"
    "0x18" "0x30" "0xfe" "0xc0" "0xf8" "0xc0" "0xfe" "0x00" "0x00" "0x00" "0x7e" "0x18" "0x7e" "0xd8" "0x7e" "0x00"
    "0x3e" "0x6c" "0xcc" "0xfe" "0xcc" "0xcc" "0xce" "0x00" "0x7c" "0x82" "0x7c" "0xc6" "0xc6" "0xc6" "0x7c" "0x00"
    "0xc6" "0x00" "0x7c" "0xc6" "0xc6" "0xc6" "0x7c" "0x00" "0x30" "0x18" "0x7c" "0xc6" "0xc6" "0xc6" "0x7c" "0x00"
    "0x78" "0x84" "0x00" "0xcc" "0xcc" "0xcc" "0x76" "0x00" "0x60" "0x30" "0xcc" "0xcc" "0xcc" "0xcc" "0x76" "0x00"
    "0xc6" "0x00" "0xc6" "0xc6" "0xc6" "0x7e" "0x06" "0xfc" "0xc6" "0x38" "0x6c" "0xc6" "0xc6" "0x6c" "0x38" "0x00"
    "0xc6" "0x00" "0xc6" "0xc6" "0xc6" "0xc6" "0x7c" "0x00" "0x18" "0x18" "0x7e" "0xc0" "0xc0" "0x7e" "0x18" "0x18"
    "0x38" "0x6c" "0x64" "0xf0" "0x60" "0x66" "0xfc" "0x00" "0x66" "0x66" "0x3c" "0x7e" "0x18" "0x7e" "0x18" "0x18"
    "0xf8" "0xcc" "0xcc" "0xfa" "0xc6" "0xcf" "0xc6" "0xc7" "0x0e" "0x1b" "0x18" "0x3c" "0x18" "0xd8" "0x70" "0x00"
    "0x18" "0x30" "0x78" "0x0c" "0x7c" "0xcc" "0x76" "0x00" "0x0c" "0x18" "0x00" "0x38" "0x18" "0x18" "0x3c" "0x00"
    "0x0c" "0x18" "0x7c" "0xc6" "0xc6" "0xc6" "0x7c" "0x00" "0x18" "0x30" "0xcc" "0xcc" "0xcc" "0xcc" "0x76" "0x00"
    "0x76" "0xdc" "0x00" "0xdc" "0x66" "0x66" "0x66" "0x00" "0x76" "0xdc" "0x00" "0xe6" "0xf6" "0xde" "0xce" "0x00"
    "0x3c" "0x6c" "0x6c" "0x3e" "0x00" "0x7e" "0x00" "0x00" "0x38" "0x6c" "0x6c" "0x38" "0x00" "0x7c" "0x00" "0x00"
    "0x18" "0x00" "0x18" "0x18" "0x30" "0x63" "0x3e" "0x00" "0x00" "0x00" "0x00" "0xfe" "0xc0" "0xc0" "0x00" "0x00"
    "0x00" "0x00" "0x00" "0xfe" "0x06" "0x06" "0x00" "0x00" "0x63" "0xe6" "0x6c" "0x7e" "0x33" "0x66" "0xcc" "0x0f"
    "0x63" "0xe6" "0x6c" "0x7a" "0x36" "0x6a" "0xdf" "0x06" "0x18" "0x00" "0x18" "0x18" "0x3c" "0x3c" "0x18" "0x00"
    "0x00" "0x33" "0x66" "0xcc" "0x66" "0x33" "0x00" "0x00" "0x00" "0xcc" "0x66" "0x33" "0x66" "0xcc" "0x00" "0x00"
    "0x22" "0x88" "0x22" "0x88" "0x22" "0x88" "0x22" "0x88" "0x55" "0xaa" "0x55" "0xaa" "0x55" "0xaa" "0x55" "0xaa"
    "0x77" "0xdd" "0x77" "0xdd" "0x77" "0xdd" "0x77" "0xdd" "0x18" "0x18" "0x18" "0x18" "0x18" "0x18" "0x18" "0x18"
    "0x18" "0x18" "0x18" "0x18" "0xf8" "0x18" "0x18" "0x18" "0x18" "0x18" "0xf8" "0x18" "0xf8" "0x18" "0x18" "0x18"
    "0x36" "0x36" "0x36" "0x36" "0xf6" "0x36" "0x36" "0x36" "0x00" "0x00" "0x00" "0x00" "0xfe" "0x36" "0x36" "0x36"
    "0x00" "0x00" "0xf8" "0x18" "0xf8" "0x18" "0x18" "0x18" "0x36" "0x36" "0xf6" "0x06" "0xf6" "0x36" "0x36" "0x36"
    "0x36" "0x36" "0x36" "0x36" "0x36" "0x36" "0x36" "0x36" "0x00" "0x00" "0xfe" "0x06" "0xf6" "0x36" "0x36" "0x36"
    "0x36" "0x36" "0xf6" "0x06" "0xfe" "0x00" "0x00" "0x00" "0x36" "0x36" "0x36" "0x36" "0xfe" "0x00" "0x00" "0x00"
    "0x18" "0x18" "0xf8" "0x18" "0xf8" "0x00" "0x00" "0x00" "0x00" "0x00" "0x00" "0x00" "0xf8" "0x18" "0x18" "0x18"
    "0x18" "0x18" "0x18" "0x18" "0x1f" "0x00" "0x00" "0x00" "0x18" "0x18" "0x18" "0x18" "0xff" "0x00" "0x00" "0x00"
    "0x00" "0x00" "0x00" "0x00" "0xff" "0x18" "0x18" "0x18" "0x18" "0x18" "0x18" "0x18" "0x1f" "0x18" "0x18" "0x18"
    "0x00" "0x00" "0x00" "0x00" "0xff" "0x00" "0x00" "0x00" "0x18" "0x18" "0x18" "0x18" "0xff" "0x18" "0x18" "0x18"
    "0x18" "0x18" "0x1f" "0x18" "0x1f" "0x18" "0x18" "0x18" "0x36" "0x36" "0x36" "0x36" "0x37" "0x36" "0x36" "0x36"
    "0x36" "0x36" "0x37" "0x30" "0x3f" "0x00" "0x00" "0x00" "0x00" "0x00" "0x3f" "0x30" "0x37" "0x36" "0x36" "0x36"
    "0x36" "0x36" "0xf7" "0x00" "0xff" "0x00" "0x00" "0x00" "0x00" "0x00" "0xff" "0x00" "0xf7" "0x36" "0x36" "0x36"
    "0x36" "0x36" "0x37" "0x30" "0x37" "0x36" "0x36" "0x36" "0x00" "0x00" "0xff" "0x00" "0xff" "0x00" "0x00" "0x00"
    "0x36" "0x36" "0xf7" "0x00" "0xf7" "0x36" "0x36" "0x36" "0x18" "0x18" "0xff" "0x00" "0xff" "0x00" "0x00" "0x00"
    "0x36" "0x36" "0x36" "0x36" "0xff" "0x00" "0x00" "0x00" "0x00" "0x00" "0xff" "0x00" "0xff" "0x18" "0x18" "0x18"
    "0x00" "0x00" "0x00" "0x00" "0xff" "0x36" "0x36" "0x36" "0x36" "0x36" "0x36" "0x36" "0x3f" "0x00" "0x00" "0x00"
    "0x18" "0x18" "0x1f" "0x18" "0x1f" "0x00" "0x00" "0x00" "0x00" "0x00" "0x1f" "0x18" "0x1f" "0x18" "0x18" "0x18"
    "0x00" "0x00" "0x00" "0x00" "0x3f" "0x36" "0x36" "0x36" "0x36" "0x36" "0x36" "0x36" "0xff" "0x36" "0x36" "0x36"
    "0x18" "0x18" "0xff" "0x18" "0xff" "0x18" "0x18" "0x18" "0x18" "0x18" "0x18" "0x18" "0xf8" "0x00" "0x00" "0x00"
    "0x00" "0x00" "0x00" "0x00" "0x1f" "0x18" "0x18" "0x18" "0xff" "0xff" "0xff" "0xff" "0xff" "0xff" "0xff" "0xff"
    "0x00" "0x00" "0x00" "0x00" "0xff" "0xff" "0xff" "0xff" "0xf0" "0xf0" "0xf0" "0xf0" "0xf0" "0xf0" "0xf0" "0xf0"
    "0x0f" "0x0f" "0x0f" "0x0f" "0x0f" "0x0f" "0x0f" "0x0f" "0xff" "0xff" "0xff" "0xff" "0x00" "0x00" "0x00" "0x00"
    "0x00" "0x00" "0x76" "0xdc" "0xc8" "0xdc" "0x76" "0x00" "0x78" "0xcc" "0xcc" "0xd8" "0xcc" "0xc6" "0xcc" "0x00"
    "0xfe" "0xc6" "0xc0" "0xc0" "0xc0" "0xc0" "0xc0" "0x00" "0x00" "0x00" "0xfe" "0x6c" "0x6c" "0x6c" "0x6c" "0x00"
    "0xfe" "0xc6" "0x60" "0x30" "0x60" "0xc6" "0xfe" "0x00" "0x00" "0x00" "0x7e" "0xd8" "0xd8" "0xd8" "0x70" "0x00"
    "0x00" "0x00" "0x66" "0x66" "0x66" "0x66" "0x7c" "0xc0" "0x00" "0x76" "0xdc" "0x18" "0x18" "0x18" "0x18" "0x00"
    "0x7e" "0x18" "0x3c" "0x66" "0x66" "0x3c" "0x18" "0x7e" "0x38" "0x6c" "0xc6" "0xfe" "0xc6" "0x6c" "0x38" "0x00"
    "0x38" "0x6c" "0xc6" "0xc6" "0x6c" "0x6c" "0xee" "0x00" "0x0e" "0x18" "0x0c" "0x3e" "0x66" "0x66" "0x3c" "0x00"
    "0x00" "0x00" "0x7e" "0xdb" "0xdb" "0x7e" "0x00" "0x00" "0x06" "0x0c" "0x7e" "0xdb" "0xdb" "0x7e" "0x60" "0xc0"
    "0x1e" "0x30" "0x60" "0x7e" "0x60" "0x30" "0x1e" "0x00" "0x00" "0x7c" "0xc6" "0xc6" "0xc6" "0xc6" "0xc6" "0x00"
    "0x00" "0xfe" "0x00" "0xfe" "0x00" "0xfe" "0x00" "0x00" "0x18" "0x18" "0x7e" "0x18" "0x18" "0x00" "0x7e" "0x00"
    "0x30" "0x18" "0x0c" "0x18" "0x30" "0x00" "0x7e" "0x00" "0x0c" "0x18" "0x30" "0x18" "0x0c" "0x00" "0x7e" "0x00"
    "0x0e" "0x1b" "0x1b" "0x18" "0x18" "0x18" "0x18" "0x18" "0x18" "0x18" "0x18" "0x18" "0x18" "0xd8" "0xd8" "0x70"
    "0x00" "0x18" "0x00" "0x7e" "0x00" "0x18" "0x00" "0x00" "0x00" "0x76" "0xdc" "0x00" "0x76" "0xdc" "0x00" "0x00"
    "0x38" "0x6c" "0x6c" "0x38" "0x00" "0x00" "0x00" "0x00" "0x00" "0x00" "0x00" "0x18" "0x18" "0x00" "0x00" "0x00"
    "0x00" "0x00" "0x00" "0x18" "0x00" "0x00" "0x00" "0x00" "0x0f" "0x0c" "0x0c" "0x0c" "0xec" "0x6c" "0x3c" "0x1c"
    "0x6c" "0x36" "0x36" "0x36" "0x36" "0x00" "0x00" "0x00" "0x78" "0x0c" "0x18" "0x30" "0x7c" "0x00" "0x00" "0x00"
    "0x00" "0x00" "0x3c" "0x3c" "0x3c" "0x3c" "0x00" "0x00" "0x00" "0x00" "0x00" "0x00" "0x00" "0x00" "0x00" "0x00")))
   (dotimes (i 2048)
     (setf (cffi:mem-aref gfxPrimitivesFontdata :unsigned-char i) (parse-integer (first font-data) 
										 :junk-allowed t :start 2 :radix 16))
     (setf font-data (cdr font-data))))

;;;SWIG wrapper code starts here

(defmacro defanonenum (&body enums)
   "Converts anonymous enums to defconstants."
  `(progn ,@(loop for value in enums
                  for index = 0 then (1+ index)
                  when (listp value) do (setf index (second value)
                                              value (first value))
                  collect `(defconstant ,value ,index))))

;;;SWIG wrapper code ends here


(defconstant FPS_UPPER_LIMIT 200)

(defconstant FPS_LOWER_LIMIT 1)

(defconstant FPS_DEFAULT 30)

(defcstruct FPSmanager
	(framecount :uint32)
	(rateticks :float)
	(lastticks :uint32)
	(rate :uint32))

(defcfun ("SDL_initFramerate" SDL_initFramerate) :void
  (manager :pointer))

(defcfun ("SDL_setFramerate" SDL_setFramerate) :int
  (manager :pointer)
  (rate :int))

(defcfun ("SDL_getFramerate" SDL_getFramerate) :int
  (manager :pointer))

(defcfun ("SDL_framerateDelay" SDL_framerateDelay) :void
  (manager :pointer))

(defconstant M_PI 3.141592654)

(defconstant SMOOTHING_OFF 0)

(defconstant SMOOTHING_ON 1)

(defcstruct tColorRGBA
	(r :uint8)
	(g :uint8)
	(b :uint8)
	(a :uint8))

(defcstruct tColorY
	(y :uint8))

(defcfun ("rotozoomSurface" rotozoomSurface) :pointer
  (src :pointer)
  (angle :double)
  (zoom :double)
  (smooth :int))

(defcfun ("rotozoomSurfaceXY" rotozoomSurfaceXY) :pointer
  (src :pointer)
  (angle :double)
  (zoomx :double)
  (zoomy :double)
  (smooth :int))

(defcfun ("rotozoomSurfaceSize" rotozoomSurfaceSize) :void
  (width :int)
  (height :int)
  (angle :double)
  (zoom :double)
  (dstwidth :pointer)
  (dstheight :pointer))

(defcfun ("rotozoomSurfaceSizeXY" rotozoomSurfaceSizeXY) :void
  (width :int)
  (height :int)
  (angle :double)
  (zoomx :double)
  (zoomy :double)
  (dstwidth :pointer)
  (dstheight :pointer))

(defcfun ("zoomSurface" zoomSurface) :pointer
  (src :pointer)
  (zoomx :double)
  (zoomy :double)
  (smooth :int))

(defcfun ("zoomSurfaceSize" zoomSurfaceSize) :void
  (width :int)
  (height :int)
  (zoomx :double)
  (zoomy :double)
  (dstwidth :pointer)
  (dstheight :pointer))

(defcfun ("SDL_imageFilterMMXdetect" SDL_imageFilterMMXdetect) :int)

(defcfun ("SDL_imageFilterMMXoff" SDL_imageFilterMMXoff) :void)

(defcfun ("SDL_imageFilterMMXon" SDL_imageFilterMMXon) :void)

(defcfun ("SDL_imageFilterAdd" SDL_imageFilterAdd) :int
  (Src1 :pointer)
  (Src2 :pointer)
  (Dest :pointer)
  (length :int))

(defcfun ("SDL_imageFilterMean" SDL_imageFilterMean) :int
  (Src1 :pointer)
  (Src2 :pointer)
  (Dest :pointer)
  (length :int))

(defcfun ("SDL_imageFilterSub" SDL_imageFilterSub) :int
  (Src1 :pointer)
  (Src2 :pointer)
  (Dest :pointer)
  (length :int))

(defcfun ("SDL_imageFilterAbsDiff" SDL_imageFilterAbsDiff) :int
  (Src1 :pointer)
  (Src2 :pointer)
  (Dest :pointer)
  (length :int))

(defcfun ("SDL_imageFilterMult" SDL_imageFilterMult) :int
  (Src1 :pointer)
  (Src2 :pointer)
  (Dest :pointer)
  (length :int))

(defcfun ("SDL_imageFilterMultNor" SDL_imageFilterMultNor) :int
  (Src1 :pointer)
  (Src2 :pointer)
  (Dest :pointer)
  (length :int))

(defcfun ("SDL_imageFilterMultDivby2" SDL_imageFilterMultDivby2) :int
  (Src1 :pointer)
  (Src2 :pointer)
  (Dest :pointer)
  (length :int))

(defcfun ("SDL_imageFilterMultDivby4" SDL_imageFilterMultDivby4) :int
  (Src1 :pointer)
  (Src2 :pointer)
  (Dest :pointer)
  (length :int))

(defcfun ("SDL_imageFilterBitAnd" SDL_imageFilterBitAnd) :int
  (Src1 :pointer)
  (Src2 :pointer)
  (Dest :pointer)
  (length :int))

(defcfun ("SDL_imageFilterBitOr" SDL_imageFilterBitOr) :int
  (Src1 :pointer)
  (Src2 :pointer)
  (Dest :pointer)
  (length :int))

(defcfun ("SDL_imageFilterDiv" SDL_imageFilterDiv) :int
  (Src1 :pointer)
  (Src2 :pointer)
  (Dest :pointer)
  (length :int))

(defcfun ("SDL_imageFilterBitNegation" SDL_imageFilterBitNegation) :int
  (Src1 :pointer)
  (Dest :pointer)
  (length :int))

(defcfun ("SDL_imageFilterAddByte" SDL_imageFilterAddByte) :int
  (Src1 :pointer)
  (Dest :pointer)
  (length :int)
  (C :unsigned-char))

(defcfun ("SDL_imageFilterAddUint" SDL_imageFilterAddUint) :int
  (Src1 :pointer)
  (Dest :pointer)
  (length :int)
  (C :unsigned-int))

(defcfun ("SDL_imageFilterAddByteToHalf" SDL_imageFilterAddByteToHalf) :int
  (Src1 :pointer)
  (Dest :pointer)
  (length :int)
  (C :unsigned-char))

(defcfun ("SDL_imageFilterSubByte" SDL_imageFilterSubByte) :int
  (Src1 :pointer)
  (Dest :pointer)
  (length :int)
  (C :unsigned-char))

(defcfun ("SDL_imageFilterSubUint" SDL_imageFilterSubUint) :int
  (Src1 :pointer)
  (Dest :pointer)
  (length :int)
  (C :unsigned-int))

(defcfun ("SDL_imageFilterShiftRight" SDL_imageFilterShiftRight) :int
  (Src1 :pointer)
  (Dest :pointer)
  (length :int)
  (N :unsigned-char))

(defcfun ("SDL_imageFilterShiftRightUint" SDL_imageFilterShiftRightUint) :int
  (Src1 :pointer)
  (Dest :pointer)
  (length :int)
  (N :unsigned-char))

(defcfun ("SDL_imageFilterMultByByte" SDL_imageFilterMultByByte) :int
  (Src1 :pointer)
  (Dest :pointer)
  (length :int)
  (C :unsigned-char))

(defcfun ("SDL_imageFilterShiftRightAndMultByByte" SDL_imageFilterShiftRightAndMultByByte) :int
  (Src1 :pointer)
  (Dest :pointer)
  (length :int)
  (N :unsigned-char)
  (C :unsigned-char))

(defcfun ("SDL_imageFilterShiftLeftByte" SDL_imageFilterShiftLeftByte) :int
  (Src1 :pointer)
  (Dest :pointer)
  (length :int)
  (N :unsigned-char))

(defcfun ("SDL_imageFilterShiftLeftUint" SDL_imageFilterShiftLeftUint) :int
  (Src1 :pointer)
  (Dest :pointer)
  (length :int)
  (N :unsigned-char))

(defcfun ("SDL_imageFilterShiftLeft" SDL_imageFilterShiftLeft) :int
  (Src1 :pointer)
  (Dest :pointer)
  (length :int)
  (N :unsigned-char))

(defcfun ("SDL_imageFilterBinarizeUsingThreshold" SDL_imageFilterBinarizeUsingThreshold) :int
  (Src1 :pointer)
  (Dest :pointer)
  (length :int)
  (t_arg3 :unsigned-char))

(defcfun ("SDL_imageFilterClipToRange" SDL_imageFilterClipToRange) :int
  (Src1 :pointer)
  (Dest :pointer)
  (length :int)
  (Tmin :unsigned-char)
  (Tmax :unsigned-char))

(defcfun ("SDL_imageFilterNormalizeLinear" SDL_imageFilterNormalizeLinear) :int
  (Src1 :pointer)
  (Dest :pointer)
  (length :int)
  (Cmin :int)
  (Cmax :int)
  (Nmin :int)
  (Nmax :int))

(defcfun ("SDL_imageFilterConvolveKernel3x3Divide" SDL_imageFilterConvolveKernel3x3Divide) :int
  (Src :pointer)
  (Dest :pointer)
  (rows :int)
  (columns :int)
  (Kernel :pointer)
  (Divisor :unsigned-char))

(defcfun ("SDL_imageFilterConvolveKernel5x5Divide" SDL_imageFilterConvolveKernel5x5Divide) :int
  (Src :pointer)
  (Dest :pointer)
  (rows :int)
  (columns :int)
  (Kernel :pointer)
  (Divisor :unsigned-char))

(defcfun ("SDL_imageFilterConvolveKernel7x7Divide" SDL_imageFilterConvolveKernel7x7Divide) :int
  (Src :pointer)
  (Dest :pointer)
  (rows :int)
  (columns :int)
  (Kernel :pointer)
  (Divisor :unsigned-char))

(defcfun ("SDL_imageFilterConvolveKernel9x9Divide" SDL_imageFilterConvolveKernel9x9Divide) :int
  (Src :pointer)
  (Dest :pointer)
  (rows :int)
  (columns :int)
  (Kernel :pointer)
  (Divisor :unsigned-char))

(defcfun ("SDL_imageFilterConvolveKernel3x3ShiftRight" SDL_imageFilterConvolveKernel3x3ShiftRight) :int
  (Src :pointer)
  (Dest :pointer)
  (rows :int)
  (columns :int)
  (Kernel :pointer)
  (NRightShift :unsigned-char))

(defcfun ("SDL_imageFilterConvolveKernel5x5ShiftRight" SDL_imageFilterConvolveKernel5x5ShiftRight) :int
  (Src :pointer)
  (Dest :pointer)
  (rows :int)
  (columns :int)
  (Kernel :pointer)
  (NRightShift :unsigned-char))

(defcfun ("SDL_imageFilterConvolveKernel7x7ShiftRight" SDL_imageFilterConvolveKernel7x7ShiftRight) :int
  (Src :pointer)
  (Dest :pointer)
  (rows :int)
  (columns :int)
  (Kernel :pointer)
  (NRightShift :unsigned-char))

(defcfun ("SDL_imageFilterConvolveKernel9x9ShiftRight" SDL_imageFilterConvolveKernel9x9ShiftRight) :int
  (Src :pointer)
  (Dest :pointer)
  (rows :int)
  (columns :int)
  (Kernel :pointer)
  (NRightShift :unsigned-char))

(defcfun ("SDL_imageFilterSobelX" SDL_imageFilterSobelX) :int
  (Src :pointer)
  (Dest :pointer)
  (rows :int)
  (columns :int))

(defcfun ("SDL_imageFilterSobelXShiftRight" SDL_imageFilterSobelXShiftRight) :int
  (Src :pointer)
  (Dest :pointer)
  (rows :int)
  (columns :int)
  (NRightShift :unsigned-char))

(defcfun ("SDL_imageFilterAlignStack" SDL_imageFilterAlignStack) :void)

(defcfun ("SDL_imageFilterRestoreStack" SDL_imageFilterRestoreStack) :void)

(defconstant GFX_FONTDATAMAX 2048)

(defconstant SDL_GFXPRIMITIVES_MAJOR 2)

(defconstant SDL_GFXPRIMITIVES_MINOR 0)

(defconstant SDL_GFXPRIMITIVES_MICRO 13)

(defcfun ("pixelColor" pixelColor) :int
  (dst :pointer)
  (x :int16)
  (y :int16)
  (color :uint32))

(defcfun ("pixelRGBA" pixelRGBA) :int
  (dst :pointer)
  (x :int16)
  (y :int16)
  (r :uint8)
  (g :uint8)
  (b :uint8)
  (a :uint8))

(defcfun ("hlineColor" hlineColor) :int
  (dst :pointer)
  (x1 :int16)
  (x2 :int16)
  (y :int16)
  (color :uint32))

(defcfun ("hlineRGBA" hlineRGBA) :int
  (dst :pointer)
  (x1 :int16)
  (x2 :int16)
  (y :int16)
  (r :uint8)
  (g :uint8)
  (b :uint8)
  (a :uint8))

(defcfun ("vlineColor" vlineColor) :int
  (dst :pointer)
  (x :int16)
  (y1 :int16)
  (y2 :int16)
  (color :uint32))

(defcfun ("vlineRGBA" vlineRGBA) :int
  (dst :pointer)
  (x :int16)
  (y1 :int16)
  (y2 :int16)
  (r :uint8)
  (g :uint8)
  (b :uint8)
  (a :uint8))

(defcfun ("rectangleColor" rectangleColor) :int
  (dst :pointer)
  (x1 :int16)
  (y1 :int16)
  (x2 :int16)
  (y2 :int16)
  (color :uint32))

(defcfun ("rectangleRGBA" rectangleRGBA) :int
  (dst :pointer)
  (x1 :int16)
  (y1 :int16)
  (x2 :int16)
  (y2 :int16)
  (r :uint8)
  (g :uint8)
  (b :uint8)
  (a :uint8))

(defcfun ("boxColor" boxColor) :int
  (dst :pointer)
  (x1 :int16)
  (y1 :int16)
  (x2 :int16)
  (y2 :int16)
  (color :uint32))

(defcfun ("boxRGBA" boxRGBA) :int
  (dst :pointer)
  (x1 :int16)
  (y1 :int16)
  (x2 :int16)
  (y2 :int16)
  (r :uint8)
  (g :uint8)
  (b :uint8)
  (a :uint8))

(defcfun ("lineColor" lineColor) :int
  (dst :pointer)
  (x1 :int16)
  (y1 :int16)
  (x2 :int16)
  (y2 :int16)
  (color :uint32))

(defcfun ("lineRGBA" lineRGBA) :int
  (dst :pointer)
  (x1 :int16)
  (y1 :int16)
  (x2 :int16)
  (y2 :int16)
  (r :uint8)
  (g :uint8)
  (b :uint8)
  (a :uint8))

(defcfun ("aalineColor" aalineColor) :int
  (dst :pointer)
  (x1 :int16)
  (y1 :int16)
  (x2 :int16)
  (y2 :int16)
  (color :uint32))

(defcfun ("aalineRGBA" aalineRGBA) :int
  (dst :pointer)
  (x1 :int16)
  (y1 :int16)
  (x2 :int16)
  (y2 :int16)
  (r :uint8)
  (g :uint8)
  (b :uint8)
  (a :uint8))

(defcfun ("circleColor" circleColor) :int
  (dst :pointer)
  (x :int16)
  (y :int16)
  (r :int16)
  (color :uint32))

(defcfun ("circleRGBA" circleRGBA) :int
  (dst :pointer)
  (x :int16)
  (y :int16)
  (rad :int16)
  (r :uint8)
  (g :uint8)
  (b :uint8)
  (a :uint8))

(defcfun ("aacircleColor" aacircleColor) :int
  (dst :pointer)
  (x :int16)
  (y :int16)
  (r :int16)
  (color :uint32))

(defcfun ("aacircleRGBA" aacircleRGBA) :int
  (dst :pointer)
  (x :int16)
  (y :int16)
  (rad :int16)
  (r :uint8)
  (g :uint8)
  (b :uint8)
  (a :uint8))

(defcfun ("filledCircleColor" filledCircleColor) :int
  (dst :pointer)
  (x :int16)
  (y :int16)
  (r :int16)
  (color :uint32))

(defcfun ("filledCircleRGBA" filledCircleRGBA) :int
  (dst :pointer)
  (x :int16)
  (y :int16)
  (rad :int16)
  (r :uint8)
  (g :uint8)
  (b :uint8)
  (a :uint8))

(defcfun ("ellipseColor" ellipseColor) :int
  (dst :pointer)
  (x :int16)
  (y :int16)
  (rx :int16)
  (ry :int16)
  (color :uint32))

(defcfun ("ellipseRGBA" ellipseRGBA) :int
  (dst :pointer)
  (x :int16)
  (y :int16)
  (rx :int16)
  (ry :int16)
  (r :uint8)
  (g :uint8)
  (b :uint8)
  (a :uint8))

(defcfun ("aaellipseColor" aaellipseColor) :int
  (dst :pointer)
  (xc :int16)
  (yc :int16)
  (rx :int16)
  (ry :int16)
  (color :uint32))

(defcfun ("aaellipseRGBA" aaellipseRGBA) :int
  (dst :pointer)
  (x :int16)
  (y :int16)
  (rx :int16)
  (ry :int16)
  (r :uint8)
  (g :uint8)
  (b :uint8)
  (a :uint8))

(defcfun ("filledEllipseColor" filledEllipseColor) :int
  (dst :pointer)
  (x :int16)
  (y :int16)
  (rx :int16)
  (ry :int16)
  (color :uint32))

(defcfun ("filledEllipseRGBA" filledEllipseRGBA) :int
  (dst :pointer)
  (x :int16)
  (y :int16)
  (rx :int16)
  (ry :int16)
  (r :uint8)
  (g :uint8)
  (b :uint8)
  (a :uint8))

(defcfun ("pieColor" pieColor) :int
  (dst :pointer)
  (x :int16)
  (y :int16)
  (rad :int16)
  (start :int16)
  (end :int16)
  (color :uint32))

(defcfun ("pieRGBA" pieRGBA) :int
  (dst :pointer)
  (x :int16)
  (y :int16)
  (rad :int16)
  (start :int16)
  (end :int16)
  (r :uint8)
  (g :uint8)
  (b :uint8)
  (a :uint8))

(defcfun ("filledPieColor" filledPieColor) :int
  (dst :pointer)
  (x :int16)
  (y :int16)
  (rad :int16)
  (start :int16)
  (end :int16)
  (color :uint32))

(defcfun ("filledPieRGBA" filledPieRGBA) :int
  (dst :pointer)
  (x :int16)
  (y :int16)
  (rad :int16)
  (start :int16)
  (end :int16)
  (r :uint8)
  (g :uint8)
  (b :uint8)
  (a :uint8))

(defcfun ("trigonColor" trigonColor) :int
  (dst :pointer)
  (x1 :int16)
  (y1 :int16)
  (x2 :int16)
  (y2 :int16)
  (x3 :int16)
  (y3 :int16)
  (color :uint32))

(defcfun ("trigonRGBA" trigonRGBA) :int
  (dst :pointer)
  (x1 :int16)
  (y1 :int16)
  (x2 :int16)
  (y2 :int16)
  (x3 :int16)
  (y3 :int16)
  (r :uint8)
  (g :uint8)
  (b :uint8)
  (a :uint8))

(defcfun ("aatrigonColor" aatrigonColor) :int
  (dst :pointer)
  (x1 :int16)
  (y1 :int16)
  (x2 :int16)
  (y2 :int16)
  (x3 :int16)
  (y3 :int16)
  (color :uint32))

(defcfun ("aatrigonRGBA" aatrigonRGBA) :int
  (dst :pointer)
  (x1 :int16)
  (y1 :int16)
  (x2 :int16)
  (y2 :int16)
  (x3 :int16)
  (y3 :int16)
  (r :uint8)
  (g :uint8)
  (b :uint8)
  (a :uint8))

(defcfun ("filledTrigonColor" filledTrigonColor) :int
  (dst :pointer)
  (x1 :int16)
  (y1 :int16)
  (x2 :int16)
  (y2 :int16)
  (x3 :int16)
  (y3 :int16)
  (color :uint32))

(defcfun ("filledTrigonRGBA" filledTrigonRGBA) :int
  (dst :pointer)
  (x1 :int16)
  (y1 :int16)
  (x2 :int16)
  (y2 :int16)
  (x3 :int16)
  (y3 :int16)
  (r :uint8)
  (g :uint8)
  (b :uint8)
  (a :uint8))

(defcfun ("polygonColor" polygonColor) :int
  (dst :pointer)
  (vx :pointer)
  (vy :pointer)
  (n :int)
  (color :uint32))

(defcfun ("polygonRGBA" polygonRGBA) :int
  (dst :pointer)
  (vx :pointer)
  (vy :pointer)
  (n :int)
  (r :uint8)
  (g :uint8)
  (b :uint8)
  (a :uint8))

(defcfun ("aapolygonColor" aapolygonColor) :int
  (dst :pointer)
  (vx :pointer)
  (vy :pointer)
  (n :int)
  (color :uint32))

(defcfun ("aapolygonRGBA" aapolygonRGBA) :int
  (dst :pointer)
  (vx :pointer)
  (vy :pointer)
  (n :int)
  (r :uint8)
  (g :uint8)
  (b :uint8)
  (a :uint8))

(defcfun ("filledPolygonColor" filledPolygonColor) :int
  (dst :pointer)
  (vx :pointer)
  (vy :pointer)
  (n :int)
  (color :uint32))

(defcfun ("filledPolygonRGBA" filledPolygonRGBA) :int
  (dst :pointer)
  (vx :pointer)
  (vy :pointer)
  (n :int)
  (r :uint8)
  (g :uint8)
  (b :uint8)
  (a :uint8))

(defcfun ("bezierColor" bezierColor) :int
  (dst :pointer)
  (vx :pointer)
  (vy :pointer)
  (n :int)
  (s :int)
  (color :uint32))

(defcfun ("bezierRGBA" bezierRGBA) :int
  (dst :pointer)
  (vx :pointer)
  (vy :pointer)
  (n :int)
  (s :int)
  (r :uint8)
  (g :uint8)
  (b :uint8)
  (a :uint8))

(defcfun ("characterColor" characterColor) :int
  (dst :pointer)
  (x :int16)
  (y :int16)
  (c :char)
  (color :uint32))

(defcfun ("characterRGBA" characterRGBA) :int
  (dst :pointer)
  (x :int16)
  (y :int16)
  (c :char)
  (r :uint8)
  (g :uint8)
  (b :uint8)
  (a :uint8))

(defcfun ("stringColor" stringColor) :int
  (dst :pointer)
  (x :int16)
  (y :int16)
  (c :string)
  (color :uint32))

(defcfun ("stringRGBA" stringRGBA) :int
  (dst :pointer)
  (x :int16)
  (y :int16)
  (c :string)
  (r :uint8)
  (g :uint8)
  (b :uint8)
  (a :uint8))

(defcfun ("gfxPrimitivesSetFont" gfxPrimitivesSetFont) :void
  (fontdata :pointer)
  (cw :int)
  (ch :int))


